﻿using System;
using System.Data;
using System.Configuration;
using System.Collections;
using System.Collections.Generic;
using System.Web;
using System.Web.Security;
using System.Web.UI;
using System.Web.UI.WebControls;
using System.Web.UI.WebControls.WebParts;
using System.Web.UI.HtmlControls;
using BussinessLogicTecnoPez.Produccion.Clasificacion_e_Incubacion;
using BussinessLogicTecnoPez.Produccion.Enfermedades_y_control_de_estanques;
using BussinessLogicTecnoPez;

public partial class Modules_EnfermedadesControlEstanque_HistorialEnfermedades : System.Web.UI.Page
{
    protected void Page_Load(object sender, EventArgs e)
    {
        if (!IsPostBack)
        {
            Globals_GenericMasterPageNoSecurity master = (Globals_GenericMasterPageNoSecurity)this.Master;
            master.Imagen = "../Styles/Icons/ic_soporte.gif";
            master.Titulo = "Enfermedades encontradas";
        }

        TPPEnfermedad.ObjType = typeof(Enfermedad);
        TPPEstanque.ObjType = typeof(Estanque);

        ConfigurarGrilla();
    }

    private void ConfigurarGrilla()
    {
        DataControlField[] extraButtons = new DataControlField[0];
        TDGEnfermedades.setupGrid(typeof(EnfermedadesEstanques), cargarUltimasEnfermedades, false, false, this.ViewState, extraButtons);
    }

    private void cargarUltimasEnfermedades()
    {
        EnfermedadesEstanques.getManager.ClearFilters();
        EnfermedadesEstanques.getManager.ClearOrders();

        if(this.TPPEstanque.ItemSelected!=null)
        {
            EnfermedadesEstanques.getManager.AddFilter("Estanque", BussinessLogicTecnoPez.GenericManager<EnfermedadesEstanques>.filterOperator.Equals,(TPPEstanque.ItemSelected as Estanque).idEstanque);
        }

        if(this.TPPEnfermedad.ItemSelected!=null)
        {
            EnfermedadesEstanques.getManager.AddFilter("Enfermedad", BussinessLogicTecnoPez.GenericManager<EnfermedadesEstanques>.filterOperator.Equals, (TPPEnfermedad.ItemSelected as Enfermedad).IdEnfermedad);
        }

        DateTime fechaDesde ;
        
        if(DateTime.TryParse(TPCFechaDesde.Text, out fechaDesde))
        {
            EnfermedadesEstanques.getManager.AddFilter("Fecha", BussinessLogicTecnoPez.GenericManager<EnfermedadesEstanques>.filterOperator.BiggerEqualsThan, fechaDesde);
        }

        DateTime fechaHasta;
        if(DateTime.TryParse(TPCFechaHasta.Text, out fechaHasta))
        {
            EnfermedadesEstanques.getManager.AddFilter("Fecha", BussinessLogicTecnoPez.GenericManager<EnfermedadesEstanques>.filterOperator.SmallerEqualsThan, fechaHasta);
        }

        EnfermedadesEstanques.getManager.AddOrder("Fecha", GenericManager<EnfermedadesEstanques>.Order.orderDirection.DESC);

        List<EnfermedadesEstanques> listado = EnfermedadesEstanques.getManager.GetFilter();


        TDGEnfermedades.DataSource = listado;
        TDGEnfermedades.DataBind();
    }
}
